1. Statement of the Technical Field
The present invention relates to the graphical user interface (GUI) arts and more particularly to customizable dialog boxes for use in a GUI environment.
2. Description of the Related Art
The conventional graphical user interface (GUI) has been widely used for many years. The primary function of the GUI includes providing user interface controls with which the end-user can interact with an underlying application. The common GUI includes many stock user interface controls, most of which, when combined, can accommodate most computer-human interactions required by an application. For example, the static text box control can be used to present text to the end-user while an edit box can permit the user to provide textual input to the application. A radio button control can provide for the exclusive selection of an element from among a field of elements, while a checklist box can control can provide for the non-exclusive selection of elements from among a field of elements.
The dialog box represents one of the staple window types in the conventional GUI. The conventional dialog box often is used to present a menu of all possible configurable options for a given object. The dialog box typically incorporates one or more controls and user input fields such as radio buttons, check boxes, drop down boxes, and edit boxes, in addition to static text fields describing the purpose of each user input field. Importantly, the dialog box further can include a close control which when activated signals the application that the user input fields have been completed with data which can be processed now that the dialog has completed. Ordinarily, this button will be labeled with lexically apropos language such as “Close”, “OK”, “Complete”, “Next” and the like. Thus, the dialog box represents a window in which a two-way dialog can be conducted between end user and application, which can be concluded through the selection of a control established for the purpose of concluding the dialog.
Often times, a two-way dialog between end user and application can become complex, involving multiple user input fields, many of which may not be relevant for a given end user. In this regard, the inclusion of too many user input fields on a single dialog box can become visually unwieldy. Consequently, complex dialog boxes can include a basic display of only the primary user input fields (as determined by the developer of the GUI) of the two-way dialog. The basic display can include a control such as a button (typically labeled “Advanced” or “Show All”) which when activated, can cause the display, either in an expanded view of the dialog, or in a secondary dialog, of both the user input fields of the basic display in addition to the remaining user input fields not included in the basic display. As an alternative, the dialog can be a tabbed notebook dialog known in the art, in which the primary default tab includes common user input fields, while subsequent tabs include the secondary user input fields.
Both of the foregoing conventional approaches to constructing GUI dialogs have limitations. The most obvious limitation is that the conventional dialog box does not allow individual customization. In this regard, where a user often completes a user input field not ordinarily included in the basic display, but in the secondary display, the user must always activate the advanced display. As a result, though the user merely wanted to complete the single input field, the user will be compelled to navigate all of the remaining user input fields in the secondary display.
Not only will the user be required to undertake extra process steps to show the advanced portion of the dialog, but the secondary display usually can be difficult to navigate as the desired field can be difficult to locate among the remaining fields and may not have associated therewith a descriptive label. By comparison, in the tabbed notebook, if the user frequently uses several extra input fields not included in the basic tab, and the input fields happen to be within several different notebook tabs, the user may have to go complete several extra tabs simply to access the one desired input field.